Name server

In computing, a name server (also spelled nameserver) is a program or computer server that implements a name-service protocol. It maps a human-recognizable identifier to a system-internal, often numeric, identification or addressing component.

The most prominent types of name servers in operation today are the name servers of the Domain Name System (DNS), one of the two principal name spaces of the Internet. The most important function of these DNS servers is the translation (resolution) of humanly memorable domain names and hostnames into the corresponding numeric Internet Protocol (IP) addresses, the second principal Internet name space which is used to identify and locate computer systems and resources on the Internet.

Contents

Domain Name System

The Internet maintains two principal namespaces, the domain name hierarchy[1] and the Internet Protocol (IP) address system.[2] The Domain Name System maintains the domain namespace and provides translation services between these two namespaces. Internet name servers implement the Domain Name System.[3] A DNS name server is a server that stores the DNS records, such as address (A, AAAA) records, name server (NS) records, and mail exchanger (MX) records for a domain name (see also List of DNS record types) and responds with answers to queries against its database.

The top hierarchy of the Internet Domain Name System is served by the root name servers maintained by delegation by the Internet Corporation for Assigned Names and Numbers (ICANN).

Authoritative name server

An authoritative name server is a name server that gives answers in response to questions asked about names in a zone. An authoritative-only name server only returns answers to queries about domain names that have been specifically configured by the administrator. Name servers can also be configured to give authoritative answers to queries in some zones, while acting as a caching name server for all other zones.

An authoritative name server can either be a master server or a slave server. A master server for a zone is the server that stores the definitive versions of all records in that zone. A slave server for a zone uses an automatic updating mechanism to maintain an identical copy of the master records. Examples of such mechanisms include DNS zone transfers and file transfer protocols. DNS provides a mechanism whereby the master for a zone can notify all the known slaves for that zone when the contents of the zone have changed. The contents of a zone are either manually configured by an administrator, or managed using Dynamic DNS.

Every domain name appears in a zone served by one or more authoritative name servers. The fully qualified domain names of the authoritative name servers of a zone are listed in the NS records of that zone. If the server for a zone is not also authoritative for its parent zone, the server for the parent zone must be configured with a delegation for the zone.

When a domain is registered with a domain name registrar, the zone administrator provides a list of name servers (typically at least two, for redundancy[4]) that are authoritative for the zone that contains the domain. The registrar provides the names of these servers to the domain registry for the top level domain containing the zone. The domain registry in turn configures the authoritative name servers for that top level domain with delegations for each server for the zone. If the fully qualified domain name of any name server for a zone appears within that zone, the zone administrator provides IP addresses for that name server, which are installed in the parent zone as glue records; otherwise, the delegation consists of the list of NS records for that zone.

Authoritative answer

A name server indicates that its response is authoritative by setting the Authoritative Answer (AA) bit in the response to a query on a name for which it is authoritative. Name servers providing answers for which they are not authoritative (for example, name servers for parent zones), do not set the AA bit.[3]

Recursive and caching name server

In principle, authoritative name servers are sufficient for the operation of the Internet. However, with only authoritative name servers operating, every DNS query must start with recursive queries at the root zone of the Domain Name System and each user system must implement resolver software capable of recursive operation.

Caching name servers, also called DNS caches, store DNS query results for a period of time determined in the configuration (time-to-live) of each domain name record. DNS caches improve the efficiency of the DNS by reducing DNS traffic across the Internet, and by reducing load on authoritative name servers, particularly root name servers. Because they can answer questions more quickly, they also increase the performance of end-user applications that use the DNS.

Recursive name servers resolve any query they receive, even if they are not authoritative for the question being asked, by consulting the server or servers that are authoritative for the question.

Caching name servers are often also recursive name servers—they perform every step necessary to answer any DNS query they receive. To do this the name server queries each authoritative name server in turn, starting from the DNS root zone. It continues until it reaches the authoritative server for the zone that contains the queried domain name. That server provides the answer to the question, or definitively says it can't be answered, and the caching resolver then returns this response to the client that asked the question.

The authority, resolving and caching functions can all be present in a DNS server implementation, but this is not required: a DNS server can implement any one of these functions alone, without implementing the others.

Internet service providers typically provide caching resolvers for their customers. In addition, many home networking routers implement caching resolvers to improve efficiency in the local network.

Microsoft networking

Name servers also exist on some Microsoft Windows networks where one host can take the role of NetBIOS browse master and act as a NBNS server. Small local networks of Windows systems require no central name server, and generally perform name-resolution using a broadcast algorithm.

There is also Windows Internet Name Service (WINS), which is effectively the same to NetBIOS names as DNS is to domain names.

See also

References

  1. ^ RFC 1034, Domain Names - Concepts and Facilities, P. Mockapetris, The Internet Society (November 1987)
  2. ^ RFC 781, Internet Protocol - DARPA Internet Program Protocol Specification, Information Sciences Institute, J. Postel (Ed.), The Internet Society (September 1981)
  3. ^ a b RFC 1035, Domain Names - Implementation and Specification, P. Mockapetris, The Internet Society (November 1987)
  4. ^ "Name Server definition at techterms.com". http://www.techterms.com/definition/nameserver. 

External links